Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Logical spreadsheet</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Logical_spreadsheet"> <link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Logical_spreadsheet rootpage-Logical_spreadsheet skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Logical spreadsheet</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<p>A <b>logical spreadsheet</b> is a <a href="Spreadsheet" title="Spreadsheet">spreadsheet</a> in which <a href="Formula" title="Formula">formulas</a> take the form of logical constraints rather than function definitions.
</p><p>In traditional <a href="Spreadsheet" title="Spreadsheet">spreadsheet</a> systems, such as <a href="Microsoft_Excel" title="Microsoft Excel">Excel</a>, cells are partitioned into "directly specified" cells and "computed" cells and the formulas used to specify the values of computed cells are "functional", i.e. for every combination of values of the directly specified cells, the formulas specify unique values for the computed cells. Logical Spreadsheets relax these restrictions by dispensing with the distinction between directly specified cells and computed cells and generalizing from functional definitions to logical constraints.
</p><p>As an illustration of the difference between traditional spreadsheets and logical spreadsheets, consider a simple numerical spreadsheet with three cells a, b, and c. Each cell accepts a single integer as value; and there is a formula stating that the value of the third cell is the sum of the values of the other two cells.
</p><p>Implemented as a traditional spreadsheet, this spreadsheet would allow the user to enter values into cells a and b, and it would automatically compute cell c. For example, if the user were to type 1 into a and 2 into b, it would compute the value 3 for c.
</p><p>Implemented as a logical spreadsheet, the user would be able to enter values into any of the cells. The user could type 1 into a and 2 into b, and the spreadsheet would compute the value 3 for c. Alternatively, the user could type 2 into b and 3 into c, and the spreadsheet would compute the value 1 for a. And so forth.
</p><p>In this case, the formula is functional, and the function is invertible. In general, the formulas need not be functional and the functions need not be invertible. For example, in this case, we could write formulas involving inequalities and non-invertible functions (such as square root). More generally, we could build spreadsheets with symbolic, rather than numeric data, and write arbitrary logical constraints on this data.
</p>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<ul><li>J. Bongard et al.: Reports on the 2006 AAAI Fall Symposia, AI Magazine 28(1), 88-92, 2007.</li>
<li>I. Cervesato: NEXCEL, A Deductive Spreadsheet, The Knowledge Engineering Review, Vol. 00:0, 1-24, Cambridge University Press, 2004.</li>
<li>G. Fischer, C. Rathke: Knowledge-Based Spreadsheets, in Proceedings of the 7th National Conference on Artificial Intelligence, St. Paul Minnesota, 21–26 August 1988, AAAI Press, Menl Park, California, 802-807, 1988.</li>
<li>D. Gunning: Deductive Spreadsheets, Defense Advanced Research Projects Agency Small Business Innovation Research, 2004.3-Topic SB043-040, 2004.</li>
<li>M. Kassoff, L. Zen, A. Garg, <a href="Michael_Genesereth" title="Michael Genesereth">M. Genesereth</a>: Predicalc: A Logical Spreadsheet Management System, in Proceedings of the 31st INternational Conference on Very Large Databases, Trondheim, NOrway, 30 August - 2 September 2005, ACM, New York, New York, 1247-1250, 2005.</li>
<li>M. Kassoff, <a href="Michael_Genesereth" title="Michael Genesereth"> M. Genesereth</a>: Predicalc, A Logical Spreadsheet Management System, The Knowledge Engineering Review, Vol. 22:3, 281-295, Cambridge University Press, 2007.</li>
<li>M. Spenke, C. Beilken: A Spreadsheet Interface for Logic Programming, in K. Bice and C. H. Lewis (eds), Proceedings of ACM CHI 89 Human Factors in Computing Systems, Austin, Texas, 30 April - 4 June 1989, ACM Press, New York, New York, 75-80, 1989.</li>
<li>M. van Emden, M. Ohki, A. Takeuchi: Spreadsheets with Incremental Queries as a User Interface for Logic Programming, New Generation Computing 4(3), 287-304, 1986.</li>
<li><a rel="nofollow" class="external free" href="http://news.stanford.edu/news/2007/april25/logic-042507.html">http://news.stanford.edu/news/2007/april25/logic-042507.html</a></li>
<li><a rel="nofollow" class="external free" href="https://dbgroup.ncsu.edu/?p=9">https://dbgroup.ncsu.edu/?p=9</a></li>
<li><a rel="nofollow" class="external free" href="http://logic.stanford.edu/spreadsheet/">http://logic.stanford.edu/spreadsheet/</a></li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2024-02-07" href="https://en.wikipedia.org/wiki/?title=Logical_spreadsheet&amp;oldid=1204667117">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>